Architecture for unified messaging

ABSTRACT

There is disclosed a unified messaging system in which a voice mail domain object comprising a plurality of fields is provided. At least one of such fields is selected to be defined as an open field such that it is accessible to an administration application of the system. The open fields are preferably stored as a voice mail domain summary in the e-mail directory of the unified messaging system.

RELATED APPLICATION(S)

The present application claims the priority of European PatentApplication No. 01305692.4 filed Jun. 29, 2001 and entitled “ImprovedArchitecture for Unified Messaging.”

FIELD OF THE INVENTION

The present invention relates to a multi-server environment where atleast some configuration data is shared by the servers, and where suchshared data is stored in a single data object the structure of which isvalued to remain proprietary. The invention particularly, but notexclusively, relates to a unified messaging system.

BACKGROUND TO THE INVENTION

Unified messaging systems integrate several different communicationmedia such that users are able to retrieve and send messages associatedwith the different media using a single interface. Typically, a unifiedmessaging system integrates voice messaging systems with e-mail systems.The single interface may, for example, be a telephone or a PC. Anexample of a unified messaging system is disclosed in U.S. Pat. No5,557,659.

A typical unified messaging system broadly provides an architecture inwhich at least one unified messaging voice server is provided as aninterface, or voice gateway, between a PBX system and an e-mail system.A typical e-mail system includes at least one message store, adirectory, at least one e-mail client, and a user administratorapplication.

To allow unified messaging systems to scale to support largedeployments, a voice mail domain is created. The voice mail domainconsists of a plurality of voice servers, which work together to exhibitthe characteristics of a larger system. The voice mail serverspreferably share unified messaging configuration data.

The unified messaging voice servers in a voice mail domain use thedirectory of the e-mail system to store the shared unified messagingconfiguration information. This unified messaging configurationinformation, shared by all voice servers within a voice mail domain, isstored in what is known as a voice mail domain object. Storing the voicemail domain directory object, containing the configuration information,in the directory provides a single copy of the shared configuration dataconveniently accessible to all the voice servers.

When the system is initially configured, a voice server automaticallyconfigures the voice mail domain object of the directory in accordancewith its own configuration set-up by setting the appropriate fields ofthe voice mail domain object. This configuration information in thevoice mail domain directory object, and any configuration informationheld in the voice mail domain directory object subsequent thereto, isnot in general transparent to any directory access applications and inparticular is not to the user administration applications of the e-mailsystem.

Once the system is initially configured, its configuration may besubsequently altered. Such subsequent alteration of the systemconfiguration is carried out by a unified messaging voice server, whichupdates the configuration information in the directory automaticallyresponsive to control information, usually received remotely. Again,such updating of the configuration information in the directory is nottransparent to the directory access applications. When a particularvoice server updates the voice mail domain object, the other voiceservers in the voice mail domain discover the update from themodifications made to the voice mail domain object in the directory.That is, there is no requirement for a voice server to notify all othervoice servers in the domain when the update is made.

The unified messaging configuration information stored in the directory,as mentioned hereinabove, takes the form of a voice mail domaindirectory object. If the unified messaging system has more than onevoice mail domain, then there will be a corresponding number of voicemail domain objects stored in the directory. A voice mail domain objectcontains a number of fields each defining a characteristic of theunified messaging system for that domain. As the voice mail domainobject is proprietary, and opaque to the e-mail system administrator,then there is no possibility for the administration applications of thee-mail system to adapt or use the unified messaging system orconfiguration data in any meaningful way.

The voice mail domain object is provided as opaque to the e-mail systembecause of the proprietary nature of the information stored therein,which relates to the configuration of the system. The configurationinformation is valued to remain proprietary for commercial reasons.

However, some subset of the voice mail domain object containsconfiguration information that a vendor may not consider proprietary.For example the voice mail domain object may contain a field identifyingthe language(s) to be used by the system. The complete invisibility ofthe voice mail domain object to the administration applications meansthat the administration applications are not provided with any level ofinformation concerning the system configuration, and as such there is nopossibility for the user administration applications to provide anylocal adaptation of the unified messaging system.

It is an aim of the present invention to provide an improved unifiedmessaging architecture. In particular, the present invention seeks tofacilitate the capability to write unified messaging user administrationsoftware which requires access to at least some elements of the voicemail domain object of the unified messaging system, for example forrange or field validation purposes.

SUMMARY OF THE INVENTION

In accordance with the present invention there is provided a method ofconfiguring a multi-server system, comprising the steps of: defining aset of data comprising a plurality of proprietary fields common to theplurality of servers; and selecting at least one of said proprietaryfields to be provided additionally as an open field.

Preferably, the invention is utilised in unified messaging system. Thus,the system is preferably a unified messaging system and the set of datacomprising a plurality of proprietary fields is a voice mail domainobject.

The method may further comprise providing a voice mail domain summarycomprising said at least one open field.

The at least one open field may be accessible to an administrationapplication of the system. The at least one open field may be accessibleas read only data. An open field in the voice mail domain summary may bechanged responsive to a change in the corresponding open field in thevoice mail domain object. An open field in the voice mail domain objectmay be changed under the control of a voice server.

The voice mail domain summary is preferably provided in a directory ofthe unified messaging system.

In a further aspect the present invention provides a store for amulti-server system including means for storing a set of data comprisinga plurality of proprietary fields, wherein at least one of saidproprietary fields is selected to be additionally provided as an openfield.

The multi-server system is preferably a unified messaging system, thestore is a directory of the unified messaging system, and the set ofdata comprising a plurality of proprietary fields is stored in thedirectory as a voice mail domain object.

The directory may further include means for storing a voice mail domainsummary comprising said at least one open field. The directory may beadapted such that the at least one open field is accessible to a user.The directory is preferably adapted such that the at least one openfield is accessible by the user as read only data.

The directory may be adapted such that the open field in the voice maildomain summary is changed responsive to a change in the correspondingopen field in the voice mail domain object.

The directory may be adapted such that an open field in the voice maildomain object is changed under the control of a voice server.

In a still further aspect the present invention provides a unifiedmessaging system including a directory; at least one voice serverdefining a voice mail domain; and a user administration application, thedirectory being adapted to store a voice mail domain objectcorresponding to the at least one voice server and comprising aplurality of proprietary fields, wherein the directory is furtheradapted such that at least one of said fields is additionally stored asan open field accessible by a user administration application.

The directory is preferably further adapted such that the at least oneof said fields accessible by the user administration application isstored as a voice mail domain summary.

The voice mail domain may comprise a plurality of voice servers. Theunified messaging system may comprise a plurality of voice mail domains.The unified messaging system preferably comprises at least one messagestore and at least one client.

The present invention also provides a computer program productcomprising computer program code for configuring a unified messagingsystem, the computer program code performing the steps of: defining avoice mail domain comprising a plurality of proprietary fields; andselecting at least one of said proprietary fields to be additionallyaccessible as an open field by an administration application of thesystem.

BRIEF DESCRIPTION OF THE FIGURES

The invention will now be described by way of example with reference tothe accompanying drawings, in which:

FIG. 1 illustrates the architecture of a known unified messaging system;

FIG. 2 illustrates the known format of user entries and VMD objects in adirectory of a unified messaging system; and

FIG. 3 illustrates the adaptation of the contents of the directory for aunified messaging system in accordance with the present invention.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

The invention is now described herein with reference to animplementation in an example unified messaging system. The invention,however, is not limited in its applicability to such an example system.

Referring to FIG. 1, there is illustrated the architecture of a typicalunified messaging system. The system comprises one or more messagestores 108, a directory 110, and at least one unified messaging voiceserver 104. In the example of FIG. 1, there is illustrated a set ofthree voice servers, 104 a, 104 b and 104 c. Together, the set of threevoice servers define a voice mail domain 130. In addition, an e-mailuser administration application 112 and at least one e-mail client 110are also inter-connected. The at least one unified messaging voiceserver 104 is connected via connections 102 to a PBX 100. Theinterconnection of the various elements shown in FIG. 1 is outside thescope of the present invention and is familiar to one skilled in theart. For ease of description herein, the various elements are shown asinterconnected by a common network connection 106. However, in practicethe various elements may not be connected on a common interface.

The at least one message store 108, the directory 110, the e-mail useradministration application 112 and the at least one e-mail client 110constitute the user e-mail system. The introduction of the unifiedmessaging voice server 104, connected to the PBX 100, creates theunified messaging system. The unified messaging functionality introducedinto the e-mail system integrates closely with the existing systemstructure. The unified messaging voice server 104 utilises the (e-mail)directory 110.

The message store 108 stores messages (e-mail and voice) associated withsystem users, and the directory 110 stores descriptive attributesassociated with those system users.

The e-mail user administration application 112 is a management tool forthe e-mail platform and is used, for example, to create a new user. Thee-mail user administration application may be provided on a PC used by asystem administrator. The e-mail user administration application isextended, in a unified messaging system, by unified messaging softwareto create a unified messaging administration application to enable theaddition of unified messaging properties for e-mail users.

Unified messaging per user configuration information is included in thedirectory 110, rather than the voice server 104, so that there isreferential integrity of all user data. Thereby when a user is deletedfrom the directory 110, all unified messaging data for that user is alsoremoved from throughout the system. With the configuration informationheld in the directory 110, the unified messaging voice server 104 mayinterrogate the directory 110 to determine configuration information.The unified messaging voice server 104 is a gateway (a voice portal)into and out of the existing e-mail system.

The directory 110 includes an entry for every system user. For example,as shown in FIG. 1 the directory includes entries 120 and 122 for users‘user#1’ and ‘user#2’ respectively. In addition, the at least onemessage store 108 includes stored data associated with each user, forexample stored data ‘datauser#1’ and ‘datauser#2’ associated with thefirst and second users respectively. There may be several sets of storeddata associated with any given user.

A standard e-mail directory entry, such as portions 206 and 208 ofentries 120 and 122, will include various information, such as internetaddress of user, disk quota for user, and display name for user.Referring to FIG. 2, there is shown a modification to the standarde-mail system directory structure in accordance with one unifiedmessaging system embodiment. In this embodiment, each user entry in thedirectory 110 is provided with a set of unified messaging extensions oradditional appended storage. This extended portion of each userdirectory entry includes unified messaging information, and ismanipulated by the unified messaging user administration application. Asillustrated in FIG. 2, the entry 120 in the directory for the first userincludes a portion 206 which corresponds to the conventional user entryfor an e-mail system. The entry 120 additionally has an extended portion210 that is provided for the purposes of this unified messaging system.Similarly for entry 122, there is a conventional entry 208 and anextended portion 212.

The additional appended storage associated with each user directoryentry contains information associated with each e-mail user but which isspecific to unified messaging functionality. This information may, forexample, include the preferred language for the user. The provision ofsuch extended information for users is a characteristic of unifiedmessaging systems, and the type of information included in theadditional appended storage will be familiar to one skilled in the art.Although in this described embodiment the additional appended storagefor holding each user's unified messaging information is provided, theinformation may be stored elsewhere. However the provision of thisinformation in the e-mail directory alongside the user's e-maildirectory entry is clearly convenient and advantageous.

When unified messaging is introduced, it is also necessary to providesystem configuration information identifying the unified messagingsystem installed and its functionality. As mentioned hereinabove, it ispreferable for this information to be stored in the directory ratherthan in the voice server. This information is provided in the directory110 as a voice mail domain (VMD) object. The provision of thisconfiguration information in the shared directory is to allow access bymultiple voice servers in a common voice mail domain.

It is possible that the system may have more than one voice mail domain(VMD), e.g. a first voice mail domain VMD#1 and a second voice maildomain VMD#2. In such a case the directory 110 is provided withconfiguration information for each voice mail domain, comprising arespective VMD object. As shown further in FIG. 2, there are providedtwo voice mail domain objects VMD#1 220 and VMD#2 222 corresponding tothe respective voice mail domains provided.

Respective voice mail domains support different configurationinformation, for example minimum password lengths and languages. The VMDobject for each VMD includes a number of fields which define all theconfiguration information for that VMD.

The internal structure of the VMD information, defined in the VMDobject, is proprietary and opaque to the e-mail user administrationapplications. Thus the VMD object for each VMD contained in thedirectory is not readable by the e-mail user administrationapplications. The voice server creates the VMD object in the directory.For example, if German is added as a language to a voice server, thenthe voice server automatically updates the associated VMD object in thedirectory.

The provision of a VMD object without an open schema or otherwisepublished definition means that a user administration application cannotuse generic system tools to view, validate and update the informationcontained within the voice mail domain object.

In accordance with a preferred embodiment of the present invention thereis created a VMD summary associated with each VMD object in thedirectory. The VMD summary is stored in the directory with itsassociated VMD object. The VMD summary contains fields that correspondto certain fields of the VMD object that it is determined are to be opento third parties. The fields of the VMD object that are to be madeavailable to third parties are defined as open fields. The open fieldsmay not be presented in the VMD summary in the same format as they arecontained in the VMD object. For example, the fields may be encrypted inthe VMD object and decrypted in the VMD summary. The fields in the VMDsummary may be presented in a more user friendly format. For example theVMD object fields may be binary fields, and may be presented in the VMDsummary as ASCII fields. Thus an open field provided in the VMD objectis preferably transformed and then stored in the VMD summary.

Referring to FIG. 3, there is illustrated the VMD objects 220 and 222 ofFIG. 2 together with their respective VMD summaries 302 and 304. Itshould be noted that the open fields of the VMD object which form theVMD summary are not necessarily adjacent fields.

The VMD object may include, for example, 100 fields, and the VMD summarymay include, for example, 10 fields. The VMD summary is a user readablestring (or a collection thereof). The fields selected for inclusion inthe VMD summary are those fields that are specifically useful to aunified messaging user administration application. Some examples of suchfields are given hereafter.

One example is the language fields. As discussed above, a unifiedmessaging user administration program configures the user directoryentry additional appended storage (210, 212) for each e-mail user. Oneof the fields in such an entry for each user that the unified messaginguser administration program may configure is the language to be used forthat user. If the languages supported by the unified messaging systemare visible to the user administration program in the VMD summary, thenthe user can be certain of selecting a language for a user which issupported by the system. Thus if the VMD summary shows that English andGerman are supported, the unified messaging user administration programwill not set a user's language in the directory as being French, forexample. However, without the VMD summary the user administrationprogram may well set a user's language as an unsupported language. Inaddition, if a voice server is subsequently modified to support a newlanguage the VMD object is updated, via the VMD object, and thisinformation is visible to the unified messaging user administrator. Inthis way the unified messaging user administrator, in setting up a newuser, may be provided with a ‘drop-down’ box which lists the availablelanguages, based on information retrieved from the VMD summary.

Other information provided in the VMD object which may be defined asopen fields include whether the system supports call waiting or find-mecapabilities, mailbox lengths, extension lengths (i.e. telephonenumber), and minimum password lengths.

Preferably the rendering transparent of the unified messaging attributesto the e-mail user administration application in the VMD summary isread-only, and the user system may never write thereto. However, thereis the possibility that in more advanced systems the invention mayprovide for the VMD summary to be written to by the user system.

In the described preferred embodiment the open fields are provided in aVMD summary distinct from the VMD object. However in an alternativeembodiment the VMD object may be masked such that open fields arereadable directly therefrom. However, as discussed hereinabove, thefields in the VMD object or the VMD object in its entirety may beencrypted. In such a case, the masking would have to provide a transformfor open fields.

A third party developer is thus now able to provide the configuration ofthe unified messaging functionality in the e-mail user administrationapplication. Through the provision of part of the VMD object in avisible fashion in accordance with the present invention, the systemadministrator may write an extended unified messaging useradministration program. More flexibility in determining a particularuser's additional appended storage, or unified messaging extension data,in the directory is thus provided by the provision of a VMD summary.

The provision of open fields in the VMD summary gives the useradministration applications the flexibility to customise the localunified messaging system independently. For example, the VMD summary mayinclude the definition of the system password length. The useradministrator may therefore have the flexibility to change passwordsknowing what the password length will be.

Although the invention has been described herein with reference to aparticular implementation in a unified messaging system, theapplicability of the invention is more general. The invention moregenerally applies to any multi-server enviromnent where data, shared bymultiple servers, is stored in a single data object and is valued toremain proprietary. Another example environment within which the presentinvention may be utilised is any multi-server e-mail layered product,such as a fax transmission gateway.

The skilled person will readily identify other possible implementationsof the present invention beyond those given herein. The scope of thepresent invention is defined by the appended claims, and the skilledperson will understand that modifications and variations to theinvention as descried herein are possible without departing from thescope of the invention as defined in the claims.

1. A method of configuring a unified messaging system including a voicemail domain and an administration application, the method comprising thesteps of: a. defining a voice mail domain object comprising a pluralityof fields proprietary to the voice mail domain, said plurality of fieldsproprietary to the voice mail domain comprising closed fields notaccessible by the administration application; and b. selecting at leastone of said plurality of fields proprietary to the voice mail domain tobe provided additionally as an open field accessible by theadministration application.
 2. A method according to claim 1, furthercomprising providing a voice mail domain summary comprising said atleast one open field.
 3. A method according to claim 1 wherein the atleast one open field is accessible as read only data.
 4. A methodaccording to claim 2 wherein an open field in the voice mail domainsummary is changed responsive to a change in the corresponding openfield in the voice mail domain object.
 5. A method according to claim 1wherein an open field in the voice mail domain object is changed underthe control of a voice server.
 6. A method according to claim 2 whereinthe voice mail domain summary is provided in a directory of the unifiedmessaging system.
 7. A unified messaging system comprising: a directory;at least one voice server defining a voice mail domain; and anadministration application; wherein the directory is adapted to store avoice mail domain object corresponding to the at least one voice serverand comprising a plurality of fields proprietary to the voice maildomain, said plurality of fields proprietary to the voice mail domaincomprising closed fields not accessible by the administrationapplication; and wherein the directory is further adapted such that atleast one of said plurality of fields proprietary to the voice maildomain is additionally stored as an open field accessible by theadministration application.
 8. A unified messaging system according toclaim 7 wherein the directory further comprises a means for storing avoice mail domain summary comprising said at least one open field.
 9. Aunified messaging system according to claim 7 wherein the directory isfurther adapted such that the at least one open field is accessible bythe administration application as read only data.
 10. A unifiedmessaging system according to claim 7 wherein the directory is furtheradapted such that the open field in the voice mail domain summary ischanged responsive to a change in the corresponding open field in thevoice mail domain object.
 11. A unified messaging system according toclaim 7 wherein the directory is further adapted such that an open fieldin the voice mail domain object is changed under the control of a voiceserver.
 12. A unified messaging system according to claim 7 wherein thedirectory is further adapted such that the at least one of said fieldsaccessible by the administration application is stored as a voice maildomain summary.
 13. A unified messaging system according to claim 7wherein the voice mail domain comprises a plurality of voice servers.14. A unified messaging system according to any one of claims 7 to 13further comprising a plurality of voice mail domains.
 15. A unifiedmessaging system according to any one of claims 7 to 13 furthercomprising at least one message store and at least one client.